﻿/// <reference path="functions.js" />
/// <reference path="../../Scripts/jquery-1.8.2.intellisense.js" />

$(function ()
    {
    var my = {};

        my.vm = function () {
            var menuSelected = "#menu-home";
            var templatesList = ko.observableArray([]);
            var gotoPage = function (selected) {
                menuSelected = selected;
                switch (selected) {
                    case '#menu-templates':
                    case 'templates':
                        resetUI();
                        jQuery('#menu-templates').addClass('active');
                        jQuery('#templatesdiv').show(1000);
                        break;
                    case '#menu-contact':
                    case 'contact':
                        resetUI();
                        jQuery('#menu-contact').addClass('active');
                        jQuery('#contactdiv').show(1000);
                        break;
                    case '#menu-about':
                    case 'about':
                        resetUI();
                        jQuery('#menu-about').addClass('active');
                        jQuery('#aboutdiv').show(1000);
                        break;
                    case '#menu-home':
                    case 'home':
                    default:
                        resetUI();
                        jQuery('#menu-home').addClass('active');
                        jQuery('#homediv').show(1000);
                        break;

                }
            },
            initData = function () {
                $.ajax({
                    type: "GET",
                    dataType: 'json',
                    url: '/home/InitializeJSON',
                    async: false,
                    success: function (response) {
                        ko.mapping.fromJS(response.Templates, {}, templatesList);

                    }
                });
            };

            var resetUI = function () {
                jQuery('#homediv').hide();
                jQuery('#aboutdiv').hide();
                jQuery('#contactdiv').hide();
                jQuery('#templatesdiv').hide();
                
                jQuery('#menu-home').removeClass('active');
                jQuery('#menu-download').removeClass('active');
                jQuery('#menu-about').removeClass('active');
                jQuery('#menu-contact').removeClass('active');
                jQuery('#menu-templates').removeClass('active');

            };
            var uiInit = function () {
                var param = document.URL.split("#");
                if (param.length > 1)
                    param = param[1];
                gotoPage(param);
            };
            return {
                gotoPage: gotoPage,
                uiInit: uiInit,
                templatesList: templatesList,
                initData: initData
            };
        }();
        
        my.vm.initData();
        ko.applyBindings(my.vm);
        my.vm.uiInit();
    }
);